Sorry, I realize this bug is a little lean on details.
PG is set up to serve multiple concurrent processes in a work queue
fashion, therefore these processes are in contention for the same
resources as the queue is basically a FIFO and I'm using SELECT ...
FOR UPDATE NOWAIT in each client to grab the next work segment in
line.
I've been running the setup on 8.1b3 and 8.1RC1 without this
particular Assertion failure, but had not been using the NOWAIT flag
until today. During a period of perhaps 20 processes operating on
the queue it looks like postgres failed this assertion 17 times, the
first coming very shortly after the processes began and the rest
following in quick succession.
I do have the core files if further info is needed from them.
Thanks,
Joel
At 3:19 PM +0000 11/9/05, Joel Stevenson wrote:
>The following bug has been logged online:
>
>Bug reference: 2033
>Logged by: Joel Stevenson
>Email address: joelstevenson@mac.com
>PostgreSQL version: 8.1.0
>Operating system: RHEL 3 update 6
>Description: Assertion Failure: File: "procarray.c", Line: 492
>Details:
>
>Hi,
>
>I'm running into an Assertion failure this morning w/8.1.0. I believe it is
>related to using the NOWAIT flag. Here is the log message:
>
>TRAP: FailedAssertion("!(serializable ? !((MyProc->xmin) != ((TransactionId)
>0))
> : ((MyProc->xmin) != ((TransactionId) 0)))", File: "procarray.c", Line:
>492)
>
>
>Postgres was configured using both --enable-debug and --enable-cassert.
>Full config options were:
>
>./configure CFLAGS=-O2 -pipe --with-perl --with-openssl
>--enable-thread-safety --enable-debug --enable-cassert
>--with-includes=/usr/kerberos/include
>
>Some non-default postgresql.conf params:
>max_connections = 150
>ssl = on
>shared_buffers = 4000
>work_mem = 102400
>maintenance_work_mem = 131072
>max_stack_depth = 4096
>commit_delay = 100
>checkpoint_segments = 5
>effective_cache_size = 173015
>stats_start_collector = on
>stats_command_string = on
>stats_block_level = on
>stats_row_level = on
>stats_reset_on_server_start = on
>autovacuum = on
>autovacuum_analyze_scale_factor = 0.1
>
>I've removed the 'NOWAIT' for the time being, but thought I should mention
>the issue.
>
>Thanks,
>Joel
>
>---------------------------(end of broadcast)---------------------------
>TIP 4: Have you searched our list archives?
>
> http://archives.postgresql.org